/**
 * 2016年10月21日
 */
package jdk.effectivejava;

import java.util.Collection;
import java.util.Iterator;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.Delayed;
import java.util.concurrent.TimeUnit;

interface UnaryFunction<T>{
	T apply(T arg);
}




public class GenericStack {
	private static UnaryFunction<Object> func = new UnaryFunction<Object>() {
		/* (non-Javadoc)
		 * @see jdk.effectivejava.UnaryFunction#apply(java.lang.Object)
		 */
		@Override
		public Object apply(Object arg) {
			// TODO Auto-generated method stub
			return arg;
		}
	};
	public static <T> UnaryFunction<T> getFunc(){
		return (UnaryFunction<T>) func;
	}
	public static void main(String args[]){
		
		
	
	}
}
